0 Execution replay and debugging ∗
نویسندگان
چکیده
As most parallel and distributed programs are internally non-deterministic – consecutive runs with the same input might result in a different program flow – vanilla cyclic debugging techniques as such are useless. In order to use cyclic debugging tools, we need a tool that records information about an execution so that it can be replayed for debugging. Because recording information interferes with the execution, we must limit the amount of information and keep the processing of the information fast. This paper contains a survey of existing execution replay techniques and tools.
منابع مشابه
Output-Deterministic Replay for Multicore Debugging
Reproducing bugs is hard. Deterministic replay systems aim to address this problem, by providing a high-fidelity replica of an original program execution that can be repeatedly executed to zero-in on bugs. Unfortunately, existing replay systems for multiprocessor programs fall short. These systems either incur high overheads, rely on nonstandard multiprocessor hardware, or fail to reliably repr...
متن کاملExecution replay of parallel programs
Debugging MIMD programs is often a delicate job. As a matter of fact, they can have diierent behaviors in successive executions. So, cyclic debugging is not applicable. To make it available for parallel programmers , we propose execution replay (full and partial) for our multi-threaded execution model, the Communicating Active Components (CAC). CAC/s have been deened to implement Parallel Objec...
متن کاملExecution replay and debugging
As most parallel and distributed programs are internally non-deterministic – consecutive runs with the same input might result in a different program flow – vanilla cyclic debugging techniques as such are useless. In order to use cyclic debugging tools, we need a tool that records information about an execution so that it can be replayed for debugging. Because recording information interferes w...
متن کاملA Taxonomy of Distributed Debuggers Based on Execution Replay
This paper presents a taxonomy of parallel and distributed debug-gers based on execution replay. Programming of distributed and parallel systems is a complex task. Amongst the many factors contributing to this complexity, the nondeterminacy of these systems is an important one. Execution replay is a technique developed to facilitate the debugging of nondeterministic programs. Execution replay h...
متن کاملDebug Determinism: The Sweet Spot for Replay-Based Debugging
Deterministic replay tools offer a compelling approach to debugging hard-to-reproduce bugs. Recent work on relaxed-deterministic replay techniques shows that replay debugging with low in-production overhead is possible. However, despite considerable progress, a replaydebugging system that offers not only low in-production runtime overhead but also high debugging utility, remains out of reach. T...
متن کامل